> 摘要:使用 OpenClaw 自动化处理办公文档,让 Excel 报表、PPT 演示、PDF 文件处理变得简单高效。
```python
from openpyxl import Workbook
wb = Workbook()
ws = wb.active
ws.title = "销售数据"
ws.append(['日期', '产品', '销量', '金额'])
ws.append(['2026-03-17', '产品 A', 100, 5000])
ws.append(['2026-03-18', '产品 B', 150, 7500])
wb.save('report.xlsx')
```
```python
from openpyxl import load_workbook
wb = load_workbook('report.xlsx')
ws = wb.active
for row in ws.iter_rows(min_row=2, values_only=True):
print(f'{row[0]}: {row[1]} - {row[2]}件')
```
```python
import pandas as pd
df = pd.read_excel('report.xlsx')
grouped = df.groupby('产品')['金额'].sum()
grouped.to_excel('summary.xlsx')
```
```python
from pptx import Presentation
from pptx.util import Inches
prs = Presentation()
slide = prs.slides.add_slide(prs.slide_layouts[0])
slide.shapes.title.text = "销售报告"
slide.placeholders[1].text = "2026 年 3 月"
slide = prs.slides.add_slide(prs.slide_layouts[1])
slide.shapes.title.text = "数据分析"
slide.placeholders[1].text = "• 总销量:1000 件\n• 总金额:50000 元"
prs.save('presentation.pptx')
```
```python
from pptx.chart.data import CategoryChartData
from pptx.enum.chart import XL_CHART_TYPE
chart_data = CategoryChartData()
chart_data.categories = ['Q1', 'Q2', 'Q3', 'Q4']
chart_data.add_series('Sales', (100, 150, 200, 250))
slide.shapes.add_chart(
XL_CHART_TYPE.COLUMN_CLUSTERED,
Inches(1), Inches(1),
Inches(6), Inches(4),
chart_data
)
```
```python
from PyPDF2 import PdfMerger
merger = PdfMerger()
merger.append('file1.pdf')
merger.append('file2.pdf')
merger.write('combined.pdf')
merger.close()
```
```python
import fitz # PyMuPDF
doc = fitz.open('document.pdf')
text = ""
for page in doc:
text += page.get_text()
doc.close()
with open('output.txt', 'w', encoding='utf-8') as f:
f.write(text)
```
```python
from reportlab.pdfgen import canvas
from reportlab.lib.pagesizes import letter
def create_watermark():
c = canvas.Canvas('watermark.pdf', pagesize=letter)
c.saveState()
c.translate(300, 400)
c.rotate(45)
c.setFont('Helvetica', 50)
c.setFillColorRGB(0.5, 0.5, 0.5, 0.3)
c.drawString(0, 0, 'CONFIDENTIAL')
c.restoreState()
c.save()
```
```python
import os
for filename in os.listdir('files'):
if filename.endswith('.xlsx'):
new_name = filename.replace('old', 'new')
os.rename(f'files/{filename}', f'files/{new_name}')
```
```python
import subprocess
def excel_to_pdf(excel_path, pdf_path):
subprocess.run([
'libreoffice', '--headless',
'--convert-to', 'pdf',
'--outdir', os.path.dirname(pdf_path),
excel_path
])
```
```python
import zipfile
def zip_files(folder_path, zip_path):
with zipfile.ZipFile(zip_path, 'w', zipfile.ZIP_DEFLATED) as zipf:
for root, dirs, files in os.walk(folder_path):
for file in files:
zipf.write(os.path.join(root, file))
```
```python
def generate_monthly_report(month):
# 读取数据
df = pd.read_excel(f'data/{month}.xlsx')
# 创建 PPT
prs = Presentation()
add_title_slide(prs, f'{month}月报')
add_chart_slide(prs, df)
add_summary_slide(prs, df)
prs.save(f'reports/{month}_report.pptx')
# 转换为 PDF
ppt_to_pdf(f'reports/{month}_report.pptx')
```
```python
def process_invoices(folder):
for filename in os.listdir(folder):
if filename.endswith('.pdf'):
# 提取发票信息
text = extract_text(f'{folder}/{filename}')
info = parse_invoice(text)
# 记录到 Excel
append_to_excel('invoices.xlsx', info)
```
```python
def manage_contracts():
contracts = []
for pdf in os.listdir('contracts'):
info = extract_contract_info(f'contracts/{pdf}')
contracts.append(info)
# 生成汇总表
df = pd.DataFrame(contracts)
df.to_excel('contract_summary.xlsx', index=False)
```
1. ✅ 使用模板文件
2. ✅ 添加错误处理
3. ✅ 记录操作日志
4. ✅ 定期备份数据
5. ✅ 验证输出结果
Q: 中文乱码?
Q: 文件太大?
Q: 格式丢失?
掌握 OpenClaw 文件处理技能,你可以:
让文档处理变得简单高效!
---
*作者:AI Assistant | 发布时间:2026-03-24 | 标签:#OpenClaw #文件处理 #办公自动化*
← 返回首页